package com.study.service;

import com.study.dto.CouponDTO;
import com.study.entity.Coupon;
import com.study.vo.CouponVO;

import java.util.List;

public interface CouponService {
    /**
     * 根据用户id和优惠券状态获取优惠券
     * @param couponDTO
     * @return
     */
    List<CouponVO> getList(CouponDTO couponDTO);

    /**
     * 用户领取优惠券(根据优惠券id)
     * @param couponId
     */
    void userGetCoupon(Long couponId);

    /**
     * 查询所有可用优惠券
     * @return
     */
    List<Coupon> getAllCoupon();

    /**
     * 根据条件查询优惠券
     * @param couponDTO
     * @return
     */
    List<Coupon> getListByCondition(CouponDTO couponDTO);

    /**
     * 根据用户id获取用户优惠券id列表
     * @param userId
     * @return
     */
    List<Long> getUserCouponIdList(Long userId);
}
